package ar.com.cubika.trainees.bean.transportes.vehiculos;

import ar.com.cubika.trainees.bean.transportes.actividades.Viaje;

/**
 * @author Carlos
 */
public class Camioncito extends Vehiculo {

    /**
     * Crea un nuevo Camioncito
     */
    public Camioncito(String patente) {
        super(patente);
    }

    /* (non-Javadoc)
     * @see ar.com.trainees.transportes.Vehiculo#getCargaMaxima()
     */
    public long getCargaMaxima() {
        return 6000;
    }

    /* (non-Javadoc)
     * @see ar.com.trainees.transportes.Vehiculo#getTiempo(ar.com.trainees.transportes.Viaje)
     */
    public double getTiempo(Viaje viaje) {
        double velocidadMalCamino;
        if (viaje.getCarga() <= 3000) {
            velocidadMalCamino = 75;
        } else if (viaje.getCarga() <= 5000) {
            velocidadMalCamino = 70;
        } else {
            velocidadMalCamino = 60;
        }
        return 0.25 + viaje.getKmBuenCamino() / 100.0 
                    + viaje.getKmMalCamino() / velocidadMalCamino;
    }

    /* (non-Javadoc)
     * @see ar.com.trainees.transportes.Vehiculo#getConsumoCombustible(ar.com.trainees.transportes.Viaje)
     */
    public double getConsumoCombustible(Viaje viaje) {
        return viaje.getKmBuenCamino() * (viaje.getCarga() / 1500.0) +
               1.5 * viaje.getKmMalCamino() * (viaje.getCarga() / 1500.0);
    }
    
}
